<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>数字表示-进制和长数字表示</title>
  <!-- 
  在 JavaScript 中，数字的表示方式包括不同的进制（如十进制、二进制、八进制和十六进制），以及对长数字的表示。
  一、数字的进制表示
  1. 十进制（Decimal）：
    - 默认的数字表示方式，基数为 10。
    - 例如： `123` ,  `456.78` 

  2. 二进制（Binary）：
    - 基数为 2，以  `0b`  或  `0B`  开头。
    - 例如： `0b1010`  表示十进制的 10。
  console.log(0b1010); // 输出: 10
  3. 八进制（Octal）：
    - 基数为 8，以  `0o`  或  `0O`  开头。
    - 例如： `0o12`  表示十进制的 10。
  console.log(0o12); // 输出: 10
  4. 十六进制（Hexadecimal）：
    - 基数为 16，以  `0x`  或  `0X`  开头。
    - 例如： `0xA`  表示十进制的 10。
  console.log(0xA); // 输出: 10
  二、长数字的表示
  在 JavaScript 中，长数字可以通过以下方式表示：
  1. 科学计数法（Exponential Notation）：
    - 用于表示非常大或非常小的数字，格式为  `a × 10^b` ，在 JavaScript 中用  `e`  或  `E`  表示。
    - 例如： `1.5e3`  表示  `1.5 × 10^3` ，即 1500。
  console.log(1.5e3); // 输出: 1500
    console.log(2e-3);  // 输出: 0.002
  2. 使用下划线分隔数字（Numeric Separators）：
    - 从 ES2021 开始，JavaScript 允许在数字中使用下划线  `_`  作为分隔符，以提高可读性。
    - 例如： `1_000_000`  表示一百万。
    console.log(1_000_000); // 输出: 1000000
    console.log(0b1010_0000); // 输出: 160

  三、总结
  - JavaScript 中的数字可以以多种进制表示，包括十进制、二进制、八进制和十六进制。
  - 长数字可以使用科学计数法表示，以便处理非常大或非常小的数值。
  - ES2021 引入了数字分隔符  `_` ，使得长数字的表示更加清晰易读。
  -->
</head>
<body>

  <script>

    // 1. 进制表示
    // 1.1 十进制
    console.log(123); // 输出: 123
    console.log(456.78); // 输出: 456.78
    // 1.2 二进制
    console.log(0b1010); // 输出: 10
    // 1.3 八进制
    console.log(0o12); // 输出: 10
    // 1.4 十六进制
    console.log(0xA); // 输出: 10
    
    // 2. 长数字的表示
    // 2.1 科学计数法
    console.log(1.5e3); // 输出: 1500
    console.log(2e-3);  // 输出: 0.002

    // 2.2 数字分隔符
    console.log(1_000_000); // 输出: 1000000
    console.log(0b1010_0000); // 输出: 160

    
  </script>
  
</body>
</html>